How to be an effective profiler: A 15-745 Project

نویسندگان

  • Katrina Ligett
  • Noam Zeilberger
چکیده

value v ::= n constant | πi function parameter | v1 ⊕ v2 operation | ld(πH , v) memory load | P ? v1 : v2 conditional value | > unknown abstract proposition P ::= v1 = v2 | v1 < v2 | . . . abstract heap H ::= πH heap parameter | [v1 7→ v2]H assignment | > unknown heapheap H ::= πH heap parameter | [v1 7→ v2]H assignment | > unknown heap Figure 2: Interpretation lattice We now give a formal description of a simplified version of the abstract interpretation used in our effect analysis. In this simplified account, we ignore external system calls, function return results, and the intricacies of L3’s fat pointers—we give some discussion of those issues in later sections. For our purposes in this section, abstract interpretation produces for each function call just the heap update performed on that trace, in terms of the function parameters and input heap. The interpretation lattice is given in Figure 2. It is mostly straightforward, but the analysis of pointers deserves some discussion. The state of the heap at the beginning of a function call is represented by the abstract parameter πH , and a memory load of location v from that heap is denoted by ld(πH , v). Assignments are dealt with by treating the heap as a function—a load of address v in the heap [v1 7→ v2]H , evaluates to v2 if v = v1, or else to the value determined by the load in H . Evaluation of a trace τ on an abstract heap H produces a new heap H ′ assuming that conditions φ are met. This is represented by the judgment τ,H ⇓ φ ⊃ H ′, which is given in Figure 3. Note that on a function call, we generalize the function parameters and input heap to be π1, . . . , πn and πH respectively, so as to obtain the most general profile information for the callee. Given this general profile, we perform a substitution to obtain the effects in terms of the caller’s parameters and heap. 3.3 Simplifying effect profiles via theorem proving The conditions generated along an abstract execution in Figure 3 are often redundant in the sense that they are tautologous given the preceding conditions. For example, suppose that executing the first iteration of a loop generates the condition 2 ∗π1 < π2, and the next iteration generates π1 < π2—the second condition is strictly redundant. Similarly, symbolic heaps may be overly complicated, if they contain conditional values P ? v1 : v2 where P is always valid given the preconditions.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Improvement of project management office performance: An empirical investigation of effective factors in iranian construction industry

Project management office (PMO) is a new emerging concept in Iranian construction industry. Executives expect this organizational unit to add value to the business, and meet the demands of stakeholders by performing specialized tasks ranging from providing project management support to portfolio management. In this regard, PMO managers have long faced the question of how to improve the performa...

متن کامل

تعیین ضریب عملکرد پروژه در مدیریت ارزش کسب شده با استفاده از مدیریت ریسک به منظور تخمین نتایج پایانی کار پیمانکاران

One of the common questions in all projects, is "How much would be the final cost of the project?" or "How much would be the completion duration of the project?". Earned Value Management presents a method for estimation of these results. In general methods and formula of Earned Value Management, future trend of project, are anticipated completely based on its previous trend, and changes in envi...

متن کامل

Identifying and evaluating individual factors of project manager contributing to project success in project-based organizations

In recent years, The importance key success factors  has led organizations to focus more on these factors. project management is one of the factors greatly affecting project success. Having a qualified and competent project manager is the first step to actual project success. In this study, the individual factors and important competencies of the project manager have been investigated. The sta...

متن کامل

Signal Processing and Data Acquisition for Wind Profiler Using Labview

This paper presents the design of Wind Profiler using LabVIEW. Wind speed is a useful weather parameter to monitor and record for many applications like shipping, aviation, meteorology, construction etc. Wind observations are crucial importance for general (operational) aviation meteorology, and numerical weather prediction. Wind profiler radars are vertically directed pulsed Doppler radars cap...

متن کامل

Development of a Generic Risk Matrix to Manage Project Risks

A generic risk matrix is presented for use identifying and assessing project risks quickly and cost effectively. It assists project managers with few resources to perform project risk analysis. The generic risk matrix (GRM) contains a broad set of risks that are categorized and ranked according to their potential impact and probability of occurrence. The matrix assists PMs in quickly identifyin...

متن کامل

EFL Textbook Evaluation: An Analysis of Readability and Vocabulary Profiler of Four Corners Book Series

This study aimed to investigate whether there is any significant relationship between the readability and vocabulary profile including the most frequent words (K1 words) and academic word list (AWL) of reading passages of Four Corners series which were EFL textbooks. To determine the readability of the texts, the Flesch–Kincaid (1975) readability test was used, while the texts' academic word li...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006